package cn.tedu.system.product.mapper;

import cn.tedu.system.merchant.pojo.dto.ProductDeleteDTO;
import cn.tedu.system.product.pojo.dto.ProductPutDto;
import cn.tedu.system.product.pojo.entity.LiveProduct;
import cn.tedu.system.product.pojo.entity.Product;
import cn.tedu.system.product.pojo.vo.LiveProductVO;
import cn.tedu.system.product.pojo.vo.ProductVO;
import io.lettuce.core.dynamic.annotation.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface ProductMapper {
    //添加商品
    int addProduct(Product product);
    //删除商品
    // Mapper接口方法
    int delProduct(ProductDeleteDTO deleteDTO);
    //修改商品信息
    int reviseProduct(Product product);
    //查询商品
    List<ProductVO> selAllProduct(@Param("productPutDto") ProductPutDto productPutDto);   //上下架商品
    int isPutProduct(Product product);

    //用户查看上架商品
    List<ProductVO> selectPut();
    //查看商品详情
    ProductVO selectDetail(Long id);

    //杨平 搜索商品
    List<ProductVO> searchProduct(String name);

    //杨平 商家发布直播商品
    int addLiveProduct(LiveProduct live);

    //杨平 查看直播商品
    List<LiveProductVO> selectLiveProduct(Long liveId);

    //杨平 下架直播商品
    int delLiveProduct(Long id);

    //杨平 管理员发布助农商品
    int addAgricultureProduct(Product product);

    int delAgricultureProduct(Long id);
}
